﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Dycox.ComponentModel;

namespace Dycox.Workflows
{
    /// <summary>
    /// 表示一个用于反映流程数据的接口。
    /// </summary>
    public interface IReflectionRoot
    {
        Guid ProcessId { get; set; }
        DateTime CreationTime { get; set; }
        DateTime? StartTime { get; set; }
        DateTime? FinishTime { get; set; }
        WorkflowComponentStatus Status { get; set; }
        string WorkflowName { get; set; }
        //string AppKey { get; }
        //string AppName { get; }

        void SetCurrentStages(ICollection<Stage> stages);

        void OnPreSerializing();
    }
}
